package com.dkm.biz.gl.repository.impl;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.Resource;

import org.springframework.stereotype.Repository;

import com.dkm.base.core.helper.SpringHelper;
import com.dkm.base.db.persistence.dao.IQueryDao;
import com.dkm.biz.gl.domain.EavSetAttr;
import com.dkm.biz.gl.persistence.dao.EavSetAttrQueryDao;
import com.dkm.biz.gl.persistence.entity.EavSetAttrPo;
import com.dkm.biz.gl.repository.EavSetAttrRepository;
import com.dkm.biz.repository.AbstractRepository;

/**
 * 对象功能:属性集属性 Repository接口的实现类
 * 开发公司:SKG.COM
 * 开发人员:Yuki
 * 创建时间:2014-12-16 17:41:35
 */
@Repository
public class EavSetAttrRepositoryImpl extends AbstractRepository<String, EavSetAttrPo,EavSetAttr> implements EavSetAttrRepository{
	  
	@Resource
	private  EavSetAttrQueryDao eavSetAttrQueryDao;

	public EavSetAttr newInstance() {
		EavSetAttrPo po = new EavSetAttrPo();
		EavSetAttr eavSetAttr = SpringHelper.getBean(EavSetAttr.class);
		eavSetAttr.setData(po);
		return eavSetAttr;
	}

	public EavSetAttr newInstance(EavSetAttrPo po) {
		EavSetAttr eavSetAttr = SpringHelper.getBean(EavSetAttr.class);
		eavSetAttr.setData(po);
		return eavSetAttr;
	} 
	
	@Override
	protected IQueryDao<String, EavSetAttrPo> getQueryDao() {
		return eavSetAttrQueryDao;
	}

	@Override
	public List<EavSetAttrPo> findBySetId(String setId) {
		 Map<String,Object> params = new HashMap<String,Object>();
		 params.put("setId",setId);
		return  eavSetAttrQueryDao.findByKey("findBySetId",params);
	}

	@Override
	public List<EavSetAttrPo> findBySetIdNoSku(String setId) {
		Map<String,Object> params = new HashMap<String,Object>();
		 params.put("setId",setId);
		return  eavSetAttrQueryDao.findByKey("findBySetIdNoSku",params);
	}

	@Override
	public EavSetAttrPo getMainSkuAttrBySetKey(String setKey) {
		return eavSetAttrQueryDao.getMainSkuAttrBySetKey(setKey);
	}
	
}
